1. Field of the Invention
The present invention relates to an apparatus and a method for processing a ringtone in a wireless terminal, more specifically, to an apparatus and a method storing position data of sound source samples.
2. Description of the Related Art
A wireless terminal is a device for making/receiving a phone call or for transmitting/receiving data. Such a wireless terminal includes a cellular phone, a Personal Digital Assistant (PDA), and the like.
A Musical Instrument Digital Interface (MIDI) is a standard protocol for data communication between electronic musical instruments. The MIDI is a standard specification for hardware and data structure that provides compatibility in the input/output between musical instruments or between musical instruments and computers through digital interface. Accordingly, a devices having the MIDI can share contents with each other because compatible data are created therein.
As the wireless terminal has become commonly used, technologies for adding various functions to the wireless terminal have been developed. One of the representative technology is to provide and output various sounds.
One of the technology according to the related art simply plays music provided via automatic response service (ARS) through the wireless terminal. In recent years, however, ringtones can be provided through various routes such as Internet, generation in the wireless terminal. In addition, using the MIDI technology, high-definition ringtone such as 40 or 64 chords can be played.
FIG. 1 is a block diagram illustrating an apparatus for processing a ringtone in a wireless terminal according to the related art.
Referring to FIG. 1, the apparatus 100 includes MIDI-based ringtone contents 110, a ringtone parser 120 for parsing MIDI format for the ringtone contents 110, a sequencer 130 for aligning the parsed information regularly, a sound source 140 where sound source samples are registered as a file format, a sound source parser 150 for parsing the sound source format, a ringtone synthesizer 160 for parsing the sound source samples corresponding to musical scale of the ringtone contents 110 and converting the parsed sound source samples into frequencies corresponding to the respective musical scale, and a control logic unit 170 for requesting the musical scale information of the sequencer 130 and the sound source samples of the sound source parser 150 according to a play order of the ringtone and outputting them to the ringtone synthesizer 160.
An apparatus for processing a ringtone in a related art wireless terminal will now be described with reference to the accompanying drawings.
Referring to FIG. 1, the apparatus 100 performs a frequency conversion in real time according to musical score data of the ringtone contents 110 and generates a sound.
The ringtone contents 110 are MIDI-based contents having musical score data and include contents downloaded from outside via communication.
Except for the basic sound source, most of the ringtone music of the wireless terminal has a MIDI file format. The MIDI file of each track is comprised of numerous musical scales and control signals. When the respective ringtones are played, musical instruments corresponding to the musical scales and additional data corresponding thereto are parsed from the sound source and the sound is created as a result.
The ringtone parser 120 parses the MIDI-based ringtone contents. That is, the ringtone parser 120 parses playback information from the ringtone contents. The playback information includes notes, musical scales, timbres, and musical scale playback duration. The note is a tone of a definite pitch. The timbre is a combination of qualities of a sound that distinguishes it from other sounds of the same pitch and volume.
The sequencer 130 aligns and outputs the musical score data parsed by the ringtone parser 120 in order of playback duration. That is, the sequencer 130 aligns the parsed musical score data with reference to playback duration in tracks or musical instruments so as to play the sound in order of playback duration.
The sound source 140 includes a plurality of sound source samples that are registered in advance. After sampling actual sounds for various musical instruments, information on the respective musical instruments is stored as a WAVE waveform, for example, a wavetable sound source.
Due to an issue of memory capacity in the terminal, the sound source 140 does not register all sound source samples with respect to all musical notes of the respective musical instruments (piano, drum, etc.), but registers several representative sound source samples. That is, instead of having an independent WAVE waveform for a musical scale for each instrument, several sounds are grouped together and one representative WAVE waveform is used commonly for an efficient use of memory.
The sound source parser 150 parses representative sound source(s) corresponding to the musical scale data of the ringtone contents 110 from the sound source 140 to play the ringtone contents 110.
The control logic unit 170 performs communications and control operation for the respective elements. Specially, the control logic unit 170 requests the sound source samples through the sound source parser 150 by using the musical score data aligned by the sequencer 130. Meanwhile, the control logic unit 170 transmits the musical scales and the musical score data to the ringtone synthesizer 160.
The ringtone synthesizer 160 generates musical sounds through the frequency conversion by using the respective musical scales and the representative sound source samples. Since all sound sources for the respective musical instruments are not registered in the sound source samples, the ringtone synthesizer 160 receives several representative sound samples for the respective musical instruments, which are registered in the sound source samples, and generates WAVE waveforms corresponding to all musical scales.
The apparatus synthesizes and outputs the sound source samples corresponding to all musical scales of the ringtone contents 110 in real time. At this point, when playing the music, the process of generating various sound source samples from the sound sources 140 are performed simultaneously. In addition, the above-described operations are performed repeatedly whenever the ringtones are played.
In case of generating 40 or 60 chords, increased system load can become a critical issue during a real-time play of the ringtone. That is, as the number of the notes of the ringtone to be played increases, the process of analyzing the sound source samples and reading the necessary musical scales and the additional data associated with the musical scales must be repeated one or more times, causing the overload of the system.
Further, as the number of the chords of the ringtone to be played increases, the system is overloaded much more when the ringtone is generated using only several sound source samples.